<?php
class modulos
{

	public static function ListaTodos()
	{
		//Monta Paginação
		$sql_paginacao = "SELECT modulo_id FROM " .TB_MODULOS. " ORDER BY modulo_nome";
		$r = Paginacao::Monta(5,$sql_paginacao);

		//Armazeno o retorno da paginacao em nossa array $content, no indice paginacao
		//assim fica fácil identificar do que se tratam os dados desta array
		$content['paginacao'] = $r;

		if($r !== false)
		{

			//Monto minha query de consulta, utilizando nossa constante
			//para definir qual tabela vamos trabalhar
			//Observe que foi passado a array $r[0] que é o retorno da nossa paginação o índice 0
			//que possui o complemento da query "LIMIT int,int", esse valor e obtido na classe
			//paginacao que está em nossa library
			$sql = "SELECT modulo_id,modulo_nome,modulo_descricao,modulo_status FROM " .TB_MODULOS. " ORDER BY modulo_nome " .$r[0];

			//Instancio a classe de manipulação
			$res = new ManipulaSql();

			//Chamamos o método reponsável por selecionar os dados
			$res->Seleciona($sql);

			//nosso mátodo retorna o objeto content que contém os dados da consulta
			//então vamos verificar se nossa consulta retornou alguma informação
			if(isset($res->content) && $res->content !== NULL)
			{
				//Caso existam dados, armazenamos o resultado da consulta
				//em nossa variável de retorno content, o índice dados
				$content['dados'] = $res->content;

				//Agora nossa variável content possui
				//$content['paginacao'] os dados da paginação
				//$content['dados'] os dados da consulta feita no banco

				return $content;
			}
		}

		//Caso não seja encontrado nenhum administrador, então retornamos false
		//pois assim podemos fazer a validação em nossa view
		else
		{
			return false;
		}
	}

	public static function ListaSelecionado()
	{
		//Monto minha query de consulta, utilizando nossa constante
		//para definir qual tabela vamos trabalhar
		$sql = "SELECT modulo_id,modulo_nome,modulo_descricao,modulo_status FROM " .TB_MODULOS. " WHERE modulo_id='" .$_GET['cod']. "' ORDER BY modulo_nome ";
		//Instancio a classe de manipulação
		$res = new ManipulaSql();
		//Chamamos o método reponsável por selecionar os dados
		$res->Seleciona($sql);
		//nosso método retorna o objeto content que contém os dados da consulta
		//então vamos verificar se nossa consulta retornou alguma informação
		if(isset($res->content) && $res->content !== NULL)
		{
			//Caso existam dados, armazenamos o resultado da consulta
			//em nossa variável de retorno CONTENT
			return $res->content;
		}
		//Caso não seja encontrado nenhum administrador, então retornamos false
		//pois assim podemos fazer a validação em nossa view
		else
		{
			return false;
		}
	}


	public static function insere()
	{
		//vamos instanciar nossa classe de manipulação de dados
		$i = new ManipulaSql();

		//remove acento dos usuários
		//$usuario = removeAcentos($_POST['usuario']);

		//Montamos nossa query de inserção
		$sql = "INSERT INTO " .TB_MODULOS. "
				(modulo_nome,modulo_descricao,modulo_status)
				VALUES
				('" .$_POST['nome']. "',
				 '" .$_POST['descricao']. "',
				 '" .$_POST['status']. "'
				)";

		//Agora chamamos o método reposável por inserir
		//vindo da classe de manipulação do mysql
		$i->Insere($sql);
		//verificamos se tudo ocorreu bem
		if($i->content === true)
		{
			//Caso tudo tenha ocorrido bem retorna true
			return true;
		}
		else
		{
			//retorna false se deu erro
			return false;
		}
	}

	public static function remove()
	{
		//vamos instanciar nossa classe de manipulação de dados
		$r = new ManipulaSql();
		//Montamos nossa query de remoção
		$sql = "DELETE FROM " .TB_MODULOS. " WHERE modulo_id='" .$_GET['cod']. "'";
		//Agora chamamos o método reposável por remover
		//vindo da classe de manipulação do mysql
		$r->Remove($sql);
		//verificamos se tudo ocorreu bem
		if($r->content === true)
		{
			//Caso tudo tenha ocorrido bem retorna true
			return true;
		}
		else
		{
			//retorna false se deu erro
			return false;
		}
	}

	public static function atualiza()
	{
		//vamos instanciar nossa classe de manipulação de dados
		$a = new ManipulaSql();
                    
		//Montamos nossa query de atualização
		$sql = "UPDATE " .TB_MODULOS. "
		        SET
		        modulo_nome='" .$_POST['nome']. "',
		        modulo_descricao='" .$_POST['descricao']. "',
		        modulo_status='" .$_POST['status']. "'
		        WHERE
		        modulo_id='" .$_GET['cod']. "'";

                ////Agora chamamos o método reposável por atualizar
		//vindo da classe de manipulação do mysql
		$a->Atualiza($sql);
		//verificamos se tudo ocorreu bem
		if($a->content === true)
		{
			//Caso tudo tenha ocorrido bem retorna true
			return true;
		}
		else
		{
			//retorna false se deu erro
			return false;
		}
	}

}